home *** CD-ROM | disk | FTP | other *** search
/ Atari Mega Archive 1 / Atari Mega Archive - Volume 1.iso / lists / mint / l_1599 / 1272 < prev    next >
Encoding:
Internet Message Format  |  1994-08-27  |  1.5 KB

  1. From: Kay Roemer <roemer@informatik.uni-frankfurt.de>
  2. Posted-Date: Mon, 18 Apr 94 15:13:28 MESZ
  3. Received-Date: Mon, 18 Apr 94 15:13:28 +0200
  4. Message-Id: <9404181313.AA15886@hera.rbi.informatik.uni-frankfurt.de>
  5. Subject: sending signals from xdd's
  6. To: mint@atari.archive.umich.edu
  7. Date: Mon, 18 Apr 94 15:13:28 MESZ
  8. Mailer: Elm [revision: 70.85]
  9.  
  10.  
  11. While implementing TCP for MintNet, I came across the following
  12. problem:
  13.  
  14. TCP provides for delivery of out-of-band or urgent data. When
  15. urgent data arrives on a socket, the process which is the owner
  16. of the socket (this concept of the sockets owner is much like
  17. the one used for terminals), must be signaled that urgent data
  18. has arrived.
  19.  
  20. Usually Unixes do this by
  21. 1) sending this sockets owner a SIGURG signal and
  22. 2) waking up any processes seleting for exceptional conditions
  23.    on this socket.
  24.  
  25. The 2nd is impossible under MiNT, because Fselect() doesn't
  26. currently support selecting for exceptional conditions.
  27.  
  28. The 1st would require a device driver to be able to send signals
  29. to ANY process, even if the current process' effective UID is
  30. not zero and different from the effective UID of the process that
  31. should be signaled.
  32.  
  33. Currently the only possibility I see to do the 1st is to fork a
  34. new process (much like minixfs and modm0dev do) that is used to
  35. send signals.
  36.  
  37. Is there another way (without a different process) to signal
  38. different processes from a device driver?
  39.  
  40. Perhaps (as Juergen suggested some time ago) post_sig() should be
  41. made available for device drivers through struct kerinfo?
  42.  
  43. Any ideas?
  44.  
  45. Kay.
  46.